var Nets_SelectedElement=""; var Nets_GoogleMapClass; var Nets_xmlDoc; var Nets_MarkerPoint = new Array(); var Nets_MarkerPointLATLNG = new Array(); var Nets_Markers; var Nets_Markerscount = 0; var Nets_Markerslength = 0; var Nets_MapBounds; var Nets_reloadingPoints = 0; var Nets_waitingreloadingPoints = 0; var Nets_GoogleMapDIVX = 0; var Nets_GoogleMapDIVY = 0; var Nets_CheckedElementPort = ''; var Nets_GoogleMapDIVElement = null; var Nets_MovePointMarker = null; var Nets_MovePoint = 0; var Nets_MapWikiLayer = null; var Nets_ShowWaitpic=1; var Nets_ZoomLevel = 0; var Nets_StepAreaGroupArea = 6; var Nets_StepAreaPort = 8; /*var PPIcon = new GIcon(); PPIcon.image = "http://www.portpilot.de/maps/port_marker.png"; PPIcon.shadow = "http://www.portpilot.de/maps/marker_shadow.png"; PPIcon.iconSize = new GSize(20, 34); PPIcon.shadowSize = new GSize(30, 30); PPIcon.iconAnchor = new GPoint(9, 34); PPIcon.infoWindowAnchor = new GPoint(9, 2); PPIcon.infoShadowAnchor = new GPoint(18, 25); PPIcon.transparent = "http://www.google.com/intl/en_ALL/mapfiles/markerTransparent.png"; PPIcon.printImage = "http://www.portpilot.de/maps/port_marker.png"; PPIcon.mozPrintImage = "http://www.portpilot.de/maps/port_marker.png";*/ var PPIcon = new OpenLayers.Icon("http://www.portpilot.de/maps/port_marker.png",new OpenLayers.Size(20,34),new OpenLayers.Pixel(-9,-34)); /*var PPIconred = new GIcon(); PPIconred.image = "http://www.portpilot.de/maps/port_marker_red.png"; PPIconred.shadow = "http://www.portpilot.de/maps/marker_shadow.png"; PPIconred.iconSize = new GSize(20, 34); PPIconred.shadowSize = new GSize(30, 30); PPIconred.iconAnchor = new GPoint(9, 34); PPIconred.infoWindowAnchor = new GPoint(9, 2); PPIconred.infoShadowAnchor = new GPoint(18, 25); PPIconred.transparent = "http://www.google.com/intl/en_ALL/mapfiles/markerTransparent.png"; PPIconred.printImage = "http://www.portpilot.de/maps/port_marker_red.png"; PPIconred.mozPrintImage = "http://www.portpilot.de/maps/port_marker_red.png";*/ var PPIconred = new OpenLayers.Icon("http://www.portpilot.de/maps/port_marker_red.png",new OpenLayers.Size(20,34),new OpenLayers.Pixel(-9,-34)); /*var AIcon = new GIcon(); AIcon.image = "http://www.portpilot.de/maps/area_marker.png"; AIcon.shadow = "http://www.portpilot.de/maps/marker_shadow.png"; AIcon.iconSize = new GSize(20, 34); AIcon.shadowSize = new GSize(30, 30); AIcon.iconAnchor = new GPoint(9, 34); AIcon.infoWindowAnchor = new GPoint(9, 2); AIcon.infoShadowAnchor = new GPoint(18, 25); AIcon.transparent = "http://www.google.com/intl/en_ALL/mapfiles/markerTransparent.png"; AIcon.printImage = "http://www.portpilot.de/maps/area_marker.png"; AIcon.mozPrintImage = "http://www.portpilot.de/maps/area_marker.png";*/ var AIcon = new OpenLayers.Icon("http://www.portpilot.de/maps/area_marker.png",new OpenLayers.Size(20,34),new OpenLayers.Pixel(-9,-34)); // An array of GIcons, to make the selection easier var Nets_Icons = []; Nets_Icons[0] = PPIcon; Nets_Icons[1] = AIcon; Nets_Icons[2] = AIcon; function Nets_parseInt2(sInt) { var i = parseInt(sInt); if(isNaN(i)) return 0; else return i; } function Nets_GetXY(Nets_GetXY_oElement) { var Nets_GetXY_oOrgElm = Nets_GetXY_oElement; var Nets_GetXY_iX=0; var Nets_GetXY_iY=0; var Nets_GetXY_iCount; var Nets_GetXY_oElement2; var Nets_GetXY_oElementOffset = Nets_GetXY_oElement.offsetParent; while(Nets_GetXY_oElement) { Nets_GetXY_oElement2 = Nets_GetXY_oElement.parentNode; if(Nets_GetXY_oElementOffset == Nets_GetXY_oElement) { Nets_GetXY_iX += Nets_GetXY_oElement.offsetLeft; Nets_GetXY_iY += Nets_GetXY_oElement.offsetTop; // Add for borders Nets_GetXY_iY += Nets_parseInt2(Nets_GetXY_oElement.style.borderTopWidth); Nets_GetXY_iX += Nets_parseInt2(Nets_GetXY_oElement.style.borderLeftWidth); // Add for scrolling // Get the next offsetParent Nets_GetXY_oElementOffset = Nets_GetXY_oElementOffset.offsetParent; } else { } Nets_GetXY_oElement = Nets_GetXY_oElement2; } Nets_GoogleMapDIVX = Nets_GetXY_iX; Nets_GoogleMapDIVY = Nets_GetXY_iY; } function Nets_SelectElementONOFF(Nets_SelectedElement_new) { if (Nets_SelectedElement == Nets_SelectedElement_new) { document.getElementById("InfrastructureLegendGroup" + Nets_SelectedElement).style.display = 'none'; document.getElementById("InfrastructureLegendGroupPic" + Nets_SelectedElement).src = '/suportnet/elemente/closed_node.gif'; Nets_SelectedElement=""; } else { if (Nets_SelectedElement != "") { document.getElementById("InfrastructureLegendGroup" + Nets_SelectedElement).style.display = 'none'; document.getElementById("InfrastructureLegendGroupPic" + Nets_SelectedElement).src = '/suportnet/elemente/closed_node.gif'; } document.getElementById("InfrastructureLegendGroup" + Nets_SelectedElement_new).style.display = 'block'; document.getElementById("InfrastructureLegendGroupPic" + Nets_SelectedElement_new).src = '/suportnet/elemente/opened_node.gif'; Nets_SelectedElement=Nets_SelectedElement_new; } } function Nets_createMarker(Nets_Point, Nets_PopupHTML, Nets_icontype) { setMarkerIcon(Nets_Icons[Nets_icontype]); var Nets_Marker = addMarker(markerLayer,Nets_Point.lon,Nets_Point.lat ,Nets_PopupHTML,"mousedown",function(evt){ if (this.popup == null) { this.popup = this.createPopup(this.closeBox); Nets_GoogleMapClass.addPopup(this.popup); this.popup.show(); } else { this.popup.toggle(); } OpenLayers.Event.stop(evt); }); return Nets_Marker; } function Nets_GoogleloadMap() { Nets_GoogleMapDIVElement = document.getElementById("map"); if (document.getElementById("waitpic") == null) { Nets_ShowWaitpic = 0; } else { Nets_GetXY(Nets_GoogleMapDIVElement); } /*Nets_GoogleMapClass = new GMap2(Nets_GoogleMapDIVElement); Nets_GoogleMapClass.enableDoubleClickZoom(); Nets_GoogleMapClass.addControl(new GMapTypeControl());*/ //Nets_GoogleMapClass = initMap(3.08333,39.9033,"http://www.portpilot.de/hafen/karten/1D73D3A0-4B8B-4857-958F-9A135A5ED1FD_small.jpg",1,1,1,1,1,1,1,1,1,1,1,1); //Nets_GoogleMapClass.setCenter(new OpenLayers.LonLat( 3.08333, 39.9033), 16); Nets_GoogleMapClass = initMap(3.08333,39.9033, 16,"http://www.portpilot.de/hafen/karten/1D73D3A0-4B8B-4857-958F-9A135A5ED1FD_small.jpg",1,1,1,1,1,1,1,1,1,1,1,1); if (Nets_ShowWaitpic != 0) { document.getElementById("waitpic").style.left = (Nets_GoogleMapDIVX+80); document.getElementById("waitpic").style.top = (Nets_GoogleMapDIVY+60); } Nets_MapBounds = Nets_GoogleMapClass.getExtent(); Nets_ZoomLevel = Nets_GoogleMapClass.getZoomForExtent(Nets_MapBounds); Nets_MapBounds = new GBounds([new GPoint(Nets_MapBounds.left,Nets_MapBounds.top),new GPoint(Nets_MapBounds.right,Nets_MapBounds.bottom)]); /* Nets_ZoomLevel = Nets_GoogleMapClass.getZoom(); Nets_MapBounds = Nets_GoogleMapClass.getBounds(); GEvent.addListener(Nets_GoogleMapClass, "moveend", function() {Nets_reloadPoints_check(0);});Nets_GoogleMapClass.setMapType(G_HYBRID_MAP); */ window.setTimeout("Nets_MaploadPoints()", 100); } function Nets_reloadPoints_check(waiting) { if ((waiting == 0) && (Nets_waitingreloadingPoints == 1)) return true; if ((Nets_reloadingPoints == 0)) { Nets_waitingreloadingPoints = 0; Nets_reloadingPoints = 1; Nets_reloadPoints(); } else { Nets_waitingreloadingPoints = 1; window.setTimeout("Nets_reloadPoints_check(1)", 500); } } function Nets_reloadPoints() { Nets_Waitpic(true); //var Nets_newZoomLevel = Nets_GoogleMapClass.getZoom(); //Nets_MapBounds = Nets_GoogleMapClass.getBounds(); Nets_MapBounds = Nets_GoogleMapClass.getExtent(); var Nets_newZoomLevel = Nets_GoogleMapClass.getZoomForExtent(Nets_MapBounds); if (((Nets_ZoomLevel <= Nets_StepAreaPort) && (Nets_newZoomLevel > Nets_StepAreaPort)) || ((Nets_ZoomLevel > Nets_StepAreaPort) && (Nets_newZoomLevel <= Nets_StepAreaPort))) { Nets_MarkerPoint = new Array(); Nets_MarkerPointLATLNG = new Array(); Nets_GoogleMapClass.clearOverlays(); } else if (((Nets_ZoomLevel <= Nets_StepAreaGroupArea) && (Nets_newZoomLevel > Nets_StepAreaGroupArea)) || ((Nets_ZoomLevel > Nets_StepAreaGroupArea) && (Nets_newZoomLevel <= Nets_StepAreaGroupArea))) { Nets_MarkerPoint = new Array(); Nets_MarkerPointLATLNG = new Array(); Nets_GoogleMapClass.clearOverlays(); } else { if (Nets_MarkerPoint.length > 0) { var Nets_markerpointtemp = new Array(); /*var Nets_southWest = Nets_MapBounds.getSouthWest(); var Nets_northEast = Nets_MapBounds.getNorthEast(); var Nets_northEastlat = Nets_northEast.lat(); var Nets_southWestlat = Nets_southWest.lat(); var Nets_northEastlng = Nets_northEast.lng(); var Nets_southWestlng = Nets_southWest.lng();*/ Nets_MarkerPointLATLNG = new Array(); for (i=0;i < Nets_MarkerPoint.length;i++) { //if (((Nets_MarkerPoint[i][1] < Nets_southWestlat) || (Nets_MarkerPoint[i][1] > Nets_northEastlat)) || ((Nets_MarkerPoint[i][2] < Nets_southWestlng) || (Nets_MarkerPoint[i][2] > Nets_northEastlng))) { if(!Nets_MapBounds.containsLonLat(new OpenLayers.LonLat(Nets_MarkerPoint[i][2],Nets_MarkerPoint[i][1]))) { Nets_GoogleMapClass.removeOverlay(Nets_MarkerPoint[i][0]) } else { Nets_markerpointtemp.push(Nets_MarkerPoint[i]); var Nets_latint = Math.floor(Nets_MarkerPoint[i][1] * 10000); var Nets_lngint = Math.floor(Nets_MarkerPoint[i][2] * 10000); Nets_MarkerPointLATLNG[Nets_latint] = new Array(); Nets_MarkerPointLATLNG[Nets_latint][Nets_lngint] = 1; } } Nets_MarkerPoint = new Array(); Nets_MarkerPoint = Nets_markerpointtemp; } if (Nets_waitingreloadingPoints == 1 ) {Nets_reloadingPoints = 0; return true;} } Nets_ZoomLevel = Nets_newZoomLevel; // Nets_MapWikiLayer = new GLayer("org.wikipedia.de"); // // Nets_MapPanoramioLayer = new GLayer("com.panoramio.all"); // Nets_GoogleMapClass.addOverlay(Nets_MapPanoramioLayer); Nets_MaploadPoints(); } function Nets_addPoints() { // obtain the array of markers and loop through it var Nets_MaxPoints = 100; if ((Nets_Markerscount+100) > Nets_Markerslength) { Nets_MaxPoints= Nets_Markerslength-Nets_Markerscount; } for (i = 0; i < Nets_MaxPoints; i++) { if (Nets_waitingreloadingPoints == 1 ) {Nets_reloadingPoints = 0; return true;} var Nets_lat = parseFloat(Nets_Markers[Nets_Markerscount].getAttribute("lat")); var Nets_lng = parseFloat(Nets_Markers[Nets_Markerscount].getAttribute("lng")); // obtain the attribues of each marker var Nets_latint = Math.floor(Nets_lat * 10000); var Nets_lngint = Math.floor(Nets_lng * 10000); if ((Nets_MarkerPointLATLNG[Nets_latint] == undefined) || (Nets_MarkerPointLATLNG[Nets_latint][Nets_lngint] == undefined)) { var Nets_Point = new OpenLayers.LonLat(Nets_lng,Nets_lat); var Nets_PopupHTML = Nets_Markers[Nets_Markerscount].getAttribute("html"); var Nets_icontype = parseInt(Nets_Markers[Nets_Markerscount].getAttribute("icontype")); // create the marker var Nets_Marker = Nets_createMarker(Nets_Point,Nets_PopupHTML,Nets_icontype); var Nets_Markertemp = new Array(); Nets_Markertemp[0] = Nets_Marker; Nets_Markertemp[1] = Nets_lat; Nets_Markertemp[2] = Nets_lng; Nets_MarkerPointLATLNG[Nets_latint] = new Array(); Nets_MarkerPointLATLNG[Nets_latint][Nets_lngint] = 1; //Nets_MarkerPoint.push(Nets_Markertemp); //Nets_GoogleMapClass.addOverlay(Nets_Marker); } Nets_Markerscount++; } if (Nets_Markerscount < Nets_Markerslength) window.setTimeout("Nets_addPoints()", 100); else { Nets_reloadingPoints = 0; Nets_Waitpic(false, 300); } } function Nets_MaploadPoints() { if (Nets_waitingreloadingPoints == 1 ) {Nets_reloadingPoints = 0; return true;} var Nets_request = GXmlHttp.create(); var Nets_requestpath = "/maps/portdata.xml.php?SelectType=PORT&Port_ID=1D73D3A0-4B8B-4857-958F-9A135A5ED1FD&sess_Language=6BEB9324-CB63-4575-8495-220A68F11138&sess_Language_Short=de&porttargetpath=&MapTarget=_top&ZoomLevel=" + Nets_ZoomLevel + "&MapBounds=" + Nets_MapBounds + "&Nets_CheckedElementsPort=" + Nets_CheckedElementPort + "&random=" + Math.random(); // document.write(Nets_requestpath); Nets_request.open("GET", Nets_requestpath, true); Nets_request.onreadystatechange = function() { if (Nets_request.readyState == 4) { Nets_xmlDoc = ''; Nets_Markers = ''; Nets_Markerscount=0; Nets_Markerslength=0; Nets_xmlDoc = Nets_request.responseXML; if (Nets_xmlDoc.documentElement != null) { Nets_Markers = Nets_xmlDoc.documentElement.getElementsByTagName("marker"); Nets_Markerslength = Nets_Markers.length; if (Nets_Markerslength > 0) window.setTimeout("Nets_addPoints()", 100); else { Nets_Waitpic(false, 300); Nets_reloadingPoints = 0; } } } } Nets_request.send(null); } function Nets_ZoomArea(Nets_lat, Nets_lng, icontype) { if (icontype == 1) Nets_GoogleMapClass.setCenter(new GLatLng(Nets_lat, Nets_lng) , (Nets_StepAreaPort+1)); if (icontype == 2) Nets_GoogleMapClass.setCenter(new GLatLng(Nets_lat, Nets_lng) , (Nets_StepAreaGroupArea+1)); } function Nets_Waitpic(show, timeout) { if (Nets_ShowWaitpic != 0) { if (timeout > 0) {window.setTimeout("Nets_Waitpic(" + show + ", 0)", timeout); return; } if (show == false) document.getElementById("waitpic").style.visibility = "hidden"; if (show == true) document.getElementById("waitpic").style.visibility = "visible"; } } function Nets_ShowOnMap() { Nets_ShowElement=1; Nets_CheckedElementPort=""; for(i=1;i<=document.InfrastructureForm.GIS_CounterPort.value;i++) { if(document.InfrastructureForm["InfrastructureLegend_ID_Port_"+i].checked == true) { if (Nets_CheckedElementPort != "" ) Nets_CheckedElementPort=Nets_CheckedElementPort+","; Nets_CheckedElementPort=Nets_CheckedElementPort+document.InfrastructureForm["InfrastructureLegend_ID_Port_"+i].value; } } Nets_MarkerPoint = new Array(); Nets_MarkerPointLATLNG = new Array(); Nets_GoogleMapClass.clearOverlays(); Nets_reloadPoints_check(0); return false; } function Nets_addLoadEvent(func) { var Nets_oldonload = window.onload; if (typeof window.onload != 'function'){ window.onload = func } else { window.onload = function() { Nets_oldonload(); func(); } } } function Nets_addUnLoadEvent(func) { var Nets_oldonunload = window.onunload; if (typeof window.onunload != 'function'){ window.onunload = func } else { window.onunload = function() { Nets_oldonunload(); func(); } } } var PPGooglemaps_start = 1; function switchNVGoogle (switch_to) { if (switch_to == 'Google') { /*document.getElementById('PPNVMap').style.display='none'; document.getElementById('PPGoogleMap').style.display='block';*/ Nets_GoogleMapClass.setBaseLayer(GOOGLE_LAYER); } else if (switch_to == 'NV') { /*document.getElementById('PPGoogleMap').style.display='none'; document.getElementById('PPNVMap').style.display='block';*/ } if (PPGooglemaps_start == 1) { Nets_addUnLoadEvent(GUnload); window.setTimeout("Nets_GoogleloadMap()", 100); PPGooglemaps_start = 0; } } function Nets_MoveMarkerClick(Nets_Point) { if (typeof (Nets_Point) != 'undefined') { document.getElementById("FORMVALUE_TXT0_GoogleLAT").value = Nets_Point.lat(); document.getElementById("FORMVALUE_TXT0_GoogleLNG").value = Nets_Point.lng(); } } if ( typeof (NVGooglemap) == 'undefined') { Nets_addLoadEvent(Nets_GoogleloadMap); Nets_addUnLoadEvent(GUnload);}